import Vue from 'vue';
import Vuex from 'vuex';

// 文件外配置：引入配置文件
// import countOptions from './count'
// import personOptions from './person'

Vue.use(Vuex);

// 文件内配置
const userOptions = {
    namespaced: true,
    actions: {
        add(context, value) {   // context是一个miniStore，包含有commit、dispatch、state等内容
            context.commit('ADD', value)
        },
        Login(context, value) {

        }
    },
    mutations: {
        ADD(state, value) {
            state.sum += value
        },
        SUB(state, value) {
            state.sum -= value
        },

    },
    state: {

    },
    getters: {
        /*  bigSum(state) {     //其中配置项可以收到state参数，然后进行数据加工
             return state.sum * 10
         } */
    },

}

const worksOptions = {
    namespaced: true,
    actions: {
        add(context, value) {   // context是一个miniStore，包含有commit、dispatch、state等内容
            context.commit('ADD', value)
        },
        Login(context, value) {

        }
    },
    mutations: {
        ADD(state, value) {
            state.sum += value
        },
        SUB(state, value) {
            state.sum -= value
        },

    },
    state: {
        searchParams: {
            type: '',
            name: '',
        }
    },
    getters: {
        /*  bigSum(state) {     //其中配置项可以收到state参数，然后进行数据加工
             return state.sum * 10
         } */
    },

}

export default new Vuex.Store({
    modules: {
        userInfo: userOptions,
        worksInfo: worksOptions,
    }
})
